home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Free 40
/
Commodore_Free_Issue_40_2010_Commodore_Computer_Club.d64
/
iv anders
< prev
next >
Wrap
Text File
|
2023-02-26
|
12KB
|
403 lines
*************************************
INTERVIEW WITH ANDERS PERSSON
*************************************
Creator of PRG Starter
Q. Please introduce yourself to our
readers
Hello! My name is Anders Persson and
I'm 37 years old. I'm living in
Sweden with my fianc and a dog.
Commodore 8 bit computers is one of
my hobbies. I have four Vic-20s, one
C64, three Plus/4s, two C128s and
one C128D.
Q. What do you do for a day job?
I have no day job except for a small
part time job as a webmaster for two
web sites.
Q. Can you tell our readers a little
about your computing history
My brother bought a Commodore Vic-20
in 1982. Later when my friends
bought computers like C64 and C128,
I bought my brother's Vic-20 this
was in 1987. After a year I got a
C64 too. Then after some years I
bought an Amiga 500. I upgraded to
an Amiga 1200 with a hard drive when
it first came out. I didn't get a PC
until 1999. When it died after a
couple of years, I went back to the
Amiga for a while and then back to
Windows. Today, I'm using Windows
Vista. And I actually like it!
I started programming the first day
I bought my Vic-20. On the Amiga,
some might recall my programs
"Selector" and "BorayLetter".
Selector was even on the front cover
of the Amiga Format magazine once:
http://user.tninet.se/{$de}zmj477m/select
orclip/
I also made a lot of Protracker mods
with the Amiga. They are available
on Aminet under mods/boray
Q. Yes you are indeed very musical
you have a website selling mp3
albums - http://listen.to/boray -
can you tell our readers a little
about your musical developments,
also how successful have the albums
been.
I have always made music. I have
made over 300 tunes. I compose and
record here at home. I play guitars,
keyboard, bass and drums. Now a days
I record and mix on the PC. Before
that, I recorded on a stand alone
digital recording workstation synced
to my Amiga1200.
When I started selling CDs in 1998,
it was fairly easy to sell. But
today, even though my music is much
better, people just expect music to
be free!
Q. Although the information is
printed elsewhere in this issue of
Commodore Free please can you
explain "PRG Starter"
It's a little helper for the VICE
emulator. The various files used by
emulators (prg, d64, d81, t64, p00
etc) are all used by all of the
emulators in the VICE package (and
other emulators as well of
course)... So, for any prg file or
d64 etc, you had to keep track of
which emulator they go to and what
settings they require. The Vic-20
was especially troublesome as
different files require different
ram settings. Now, with PRG Starter,
you don't have to bother with this
at all. You just double click a file
and it auto starts in the right
emulator.
Q. Could the software be adapted to
other emulators other than VICE
First I thought of having some sort
of settings screen where you could
adjust all the different start
commands and options. But I decided
that it would be just too many
options and that it would be better
to keep it simple. Another thought I
had was to have an option for using
YAPE instead of VICE xplus4 as I
know that YAPE is a popular emulator
among Plus/4 users. That is more
likely to happen, but for now, I'm
happy with it being just a VICE
helper.
Q. Has the software been tested
successfully under Mac OS and Linux
It has been tested successfully on
Linux (Fedora 12 x86_64). You need
the right Mono packages installed.
It has not been tested on Mac (as
far as I know). The "Setup" button
will not appear if you don't run it
on Windows, so you have to attach
the file types etc yourself.
Q. What was the inspiration for the
project and How did you start to
code the software, for example: you
have some PRG files and d64 images
how do you start writing a piece of
software
In year 2004 I wrote a program
called "PRG Info" for the Amiga. It
was one of the help tools in a
package I called "vic-emu-tools".
PRG Info was made to analyze a PRG
file, provide information on how to
run it on a real computer and on
vic-emu for the Amiga. The package
also contained a script called
"vicstart" that used PRG Info to
start cartridge files in vic-emu.
So, I had the basic idea to PRG
Starter 6 years ago already.
Later, in 2007, I think I asked a
fellow Vic-20 user "Bjrg
Stojalowski" to make a PC version of
PRG Info, or if he asked me. Anyway,
I shared my source code with him,
and he made a PC version. It's
available here:
http://user.tninet.se/{$de}pug510w/datorm
useum/prginfo.html
In 2009 (I think), I posted a
suggestion to the VICE team, to make
a better auto start feature in XVIC
as that is the machine that is most
difficult to set up. New users on
the Vic-20 Denial forum almost
always ask how to run different
files. I suggested to the VICE team
that they could use the same kind of
detection used in "PRG Info" in XVIC
and I attached the source of my
Amiga version. I didn't get any
answer.
In the start of 2010, I had not
programmed on Windows since 2000
(when I worked as a C++ programmer).
I had been programming some Vic-20
stuff since then, but not anything
for a modern computer. But now I
suddenly felt like taking it up
again. I found (to my big surprise)
that there was a completely free
version of Visual Basic 2008
available from Microsoft. I think
it's a very nice programming
environment (and it's about 1-2
million times faster than basic on a
Vic-20!). First, I made a Windows
version of another old Amiga program
of mine called "SimMail". After that
I started on a new version of "PRG
Info" that would take one step
further and not only tell how to run
a file, it should actually start it.
So "PRG Starter" was the logical
name. I based it on the Amiga
version. There probably still exists
code segments in there from the
Amiga version.
As soon as I released the first
version, another fellow Vic-user
"Robert Hurst" asked for a Linux
version. As I didn't know about the
Mono project by then (that let's you
run .NET applications on Linux), I
let him make his own Linux version
from scratch after looking at my
source code. He made some additions,
for example .P00 support. That
inspired me to do the same thing.
Since my first release (that only
supported PRG files), I have added
support for .P00, .P01, .P02 etc,
.D64, .D41, .D71, .D81, .T64 and
.CRT. And I have added other various
enhancements as well.
Q. How Does the software pickup what
machine the files are for
The first two bytes of a PRG file is
the 16-bit loading address of the
file. This is the address from which
the file was saved. If you load the
file ,8,1 then the file will be
loaded into this address. If you
load it just ,8 then it will be
loaded to the standard program
address. (VICE always loads ,8,1
when autostarting). The different
Commodores have different standard
start addresses for their basic
memory. Vic-20 even has different
addresses for different memory
configurations. So has the C128 and
Plus/4 when using basic graphics.
There are other standard addresses,
for example for various Vic-20
cartridge files.
So the starting address and file
size is of big use when analyzing
what computer the file belongs to.
But for some machines it's not as
easy as that. The unexpanded Vic-20
and the Plus/4 share the same
starting address and so does the PET
and the Vic-20 equipped with a 3K
expansion. So there needs to be some
analyzing. Here is a description of
the routine telling the unexpanded
Vic-20 apart from the Plus/4:
If the file is too big for an
unexpanded Vic-20, then it's for a
Plus/4. If it's small enough, then
the basic code is scanned for Basic
V3.5 commands and for any colour
codes 8-15 in strings. If any are
found, then it's a Plus/4 program.
Then, it's scanned for basic access
of the ted chip and for a certain
use of screen pokes. If found, it's
a Plus/4 program. After this and if
there is just basic and no machine
language in the program, then it's
regarded as a Vic program. If the
file contains machine language, then
it's scanned for access of the VIC
and TED chips and every access adds
to a machine score. The highest
scorer will win and if the score is
a draw, then the Vic-20 will win.
Q. How accurate can the software be
when deciding what configuration to
run
Well, let's just say it's not 100%
accurate, but I think it's accurate
enough. I occasionally find programs
ending up in the wrong emulator.
There are two different reasons:
1. Someone has for example; used a
C128 (in C128 mode) to copy and save
a C64 program. Then the program will
be identified as a C128-program. For
this reason I have provided a
"Change" button where you easily can
save the correct starting address
into the file. It works even with
D64 files etc. Note that files
containing the wrong starting
address wouldn't be possible to auto
start in VICE without PRG Starter
either, but PRG Starter offers an
easy way of fixing this.
2. The second reason is if the
analyzing fails. This is most common
on more obscure files saved from
strange memory addresses. It can
also happen occasionally that the
Vic/Plus4 or Vic/Pet analyze fails.
Anyway, for this I have added global
overrides. You just rename the file
and put one of the override tags in
there, for example (Vic) or (Plus4).
So, in this way, you can actually
get 100% of your programs to end up
in the right emulator.
Q. Do you have any Further plans,
for example a recent update added
MINIpaint screens can be viewed with
the software; And Do you feel apart
from minor updates and bolt-ons that
the software is complete, I suppose
you could continually add things
like a GEOS File viewer for paint
and document files and a converter
to convert Geos written files to
ASCII text or RTF, kolapad viewer
etc where do you stop
Well, I have no immediate plans for
PRG Starter, but I didn't have after
releasing V1.0 either. If new ideas
or good suggestions pop up, then
there most likely will be a next
version. On the other hand, it's
more likely that there are less
ideas left by now ;-)
Q. What has the feedback on the
project been like and This may be an
odd question but have you had much
negative feed back about the
software?
I have mostly got positive feedback.
How about "one of the most useful
tools in Vic emulation". Or... Here
is my favourite: "This program has
quickly become an essential part of
my Commodore emulation experience.
It's like all genius things - this
should've been made a long time ago
and it's a really simple idea but it
took a genius to think of it and
implement it!"
I have also got some feedback about
files not working etc. That is
valued feedback but most of it was
actually because of faulty prg files
that wasn't possible to auto start
in VICE without PRG Starter either.
I don't think I've got any feedback
that has been mainly negative from
anyone who has tried the program.
Q. I notice as a nice touch when a
file is run PRG Starter will display
start and end memory address in both
HEX and Decimal and the size of the
file in bytes, is this for a reason
or was it just a detail you added.
As I've described earlier, these
figures are essential for what the
file will be identified as.
Q. Do you have any other software
projects planned for use with
Commodore machines
No. Occasionally I write some
programs for the Vic-20, which can
be found here: http://back.to/vic20
Q. Do you have a question you wished
I had asked
No, I think you covered most of it.
Q. If you could make 1 change in the
world to anything what would it be
Adam and Eve shouldn't have eaten
those fruits! ;-)
Thanks
Anders
=====================================